package net.sisgac.atencion_cliente.action;

import java.util.Map;

import net.sisgac.atencion_cliente.service.SeguridadService;
import net.sisgac.atencion_cliente.service.SeguridadServiceImpl;
import net.sisgac.cliente.model.Cliente;

import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;



public class LoginAction extends ActionSupport
implements ModelDriven<Cliente>{
	
	
	private Cliente cliente;
	private String mensaje;
	private SeguridadService seguridadService;
	
	public LoginAction(){
		seguridadService = new SeguridadServiceImpl();
	}
	
	public String execute(){
		try{
			Cliente clientebd=seguridadService.validarCliente(cliente);
			Map session=ActionContext.getContext().getSession();
			session.put("cliente", clientebd);
			cliente=clientebd;
			
		}catch (Exception ex) {
			// TODO: handle exception
			mensaje = ex.getMessage();
			return Action.ERROR;
		}return Action.SUCCESS;
	}
	
	public void validate() {
		if(cliente.getIdcliente().length()==0){
				addFieldError("cliente.cuenta",getText("cliente.cuenta.required"));
		}
		if(cliente.getIdcliente().length()==0){
				addFieldError("cliente.clave", getText("cliente.clave.required"));
		}
	}

	@Override
	public Cliente getModel() {
		// TODO Auto-generated method stub
		return null;
	}

	public Cliente getCliente() {
		return cliente;
	}

	public void setCliente(Cliente cliente) {
		this.cliente = cliente;
	}

	public String getMensaje() {
		return mensaje;
	}

	public void setMensaje(String mensaje) {
		this.mensaje = mensaje;
	}
	
	

}
